<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script>

        // 正则是由一系列的符号构成的
        //   |  或者
        //   [] 或者 --- 区间


        // 数量匹配
        //   {n}   匹配前面的字符的次数
        //   {m,n} 匹配前面的字符的次数  m-n次
        //   {m,}  匹配前面的字符的次数  至少m次


        // 数量匹配的简写
        //  ?   匹配前面的字符的次数   匹配0次或者1次   {0,1}
        //  +   匹配前面的字符的次数   至少一次         {1,}
        //  *   匹配前面的字符的次数   0次或者多次      {0,}



        // 判断字符串中是否有数字
        var reg = /0|1|2|3|4|5|6|7|8|9/;


        // /0|1|2|3|4|5|9/
        var reg2 = /[0-59a-z]/;

        var str = 'hello8哈哈';

        console.log(reg.test(str));

        console.log(reg2.test(str));


        // 5个数字连在一起
        var reg = /[0-9]{5}/;


        var reg = /ab{1,3}c/;   //   abc  abbc   abbbc 

        var reg = /ab{3,}c/;   //   abc  abbc   abbbc   ab...bc

        var str = '1a12ad23ababac';
        console.log(reg.test(str));


        var reg = /ab?c/;    // ac  abc
        var str = 'abbcdf';
        console.log(reg.test(str));


        var reg = /ab+c/;    // abc  abbc   ab...bc
        var str = 'abbcdf';
        console.log(reg.test(str));


        var reg = /ab*c/;    // abc  abbc   ab...bc
        var str = 'acdf';
        console.log(reg.test(str));


    </script>

</body>

</html>